import logging
import redis


class Config(object):
    # 4.csrf配置
    SECRET_KEY = 'abcdefg'
    DEBUG = True

    # 1.数据库配置
    # 1)数据库配置:
    SQLALCHEMY_DATABASE_URI = 'mysql://root:mysql@127.0.0.1:3306/information'
    SQLALCHEMY_TRACK_MODIFICATIONS = False
    SQLALCHEMY_COMMIT_ON_TEARDOWN=True

    # 2.redis配置
    # 4)redis配置
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379
    # 3.session配置
    # 9)session设置
    SESSION_TYPE = 'redis'  # 指定session保存到redis中
    SESSION_USE_SIGNER = True  # 需要签名存储
    SESSION_PERMANENT = True  # 需要过期
    SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST, port=REDIS_PORT)  # 使用redis实例
    PERMANENT_SESSION_LIFETIME = 3600 * 24 * 2  # 设置过期时间
    # 10)根据开发模式不同,设置日志级别
    LEVEL = logging.DEBUG


# 开发
class DevelopConfig(Config):
    pass


# 生产(上线)
class ProductConfig(Config):
    DEBUG = False
    LEVEL = logging.ERROR


# 测试
class TestConfig(Config):
    # 开启测试模式
    TESTING = True


config_dict = {
    'develop': DevelopConfig,
    'product': ProductConfig,
    'test': TestConfig

}
